草庐IT

php - 在PHP中模拟友元类

全部标签

go - 在 golang 中模拟内部函数

我想使用接口(interface)模拟函数,我能够模拟第一个函数callsomething在icza的大力帮助下,现在有点棘手了。我想测试函数vl1使用mockforfunctionfunction1,它是如何完成的。https://play.golang.org/p/w367IOjADFV主要包import("fmt""time""testing")typevInterfaceinterface{function1()bool}typemStructstruct{infostringtimetime.Time}func(s*mStruct)function1()bool{return

unit-testing - 如何在 Golang 中实现 stub ? stub 和模拟之间有什么区别?

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭4年前。Improvethisquestion我在Golang的单元测试中使用模拟。但是在Golang的实现代码中如何区分stub和mock呢?

go - 如何在 golang 中模拟 GCP 的存储?

我真的不熟悉在go中模拟第三方库,我现在正在模拟cloud.google.com/go/storage我正在使用mockery.这是我当前的界面://ClientstorageclienttypeClientinterface{Bucket(namestring)BucketHandleBuckets(ctxcontext.Context,projectIDstring)BucketIterator}//BucketHandlestorage'sBucketHandletypeBucketHandleinterface{Attrs(context.Context)(*storage.B

go - 我如何模拟接口(interface)内的特定嵌入式方法

我有这段代码,我想为更新功能编写一个单元测试。我如何模拟FindByUsername函数?我尝试覆盖u.FindByUsername但它不起作用。另外,我可以编写一些函数来将u*UserLogic和userNamestring作为输入参数并执行u.FindByUsername()和模拟这个函数,但这不是一个干净的解决方案我需要一个更好的解决方案来模拟UserOperation接口(interface)中的方法。packagelogicimport("errors""fmt")var(dataStore=map[string]*User{"optic":&User{Username:"b

go - 如何检查 Cloud Pub/Sub 模拟器是否已启动并正在运行?

我有GC功能,我使用CloudPub/Sub模拟器在本地开发和测试这些功能。我希望能够从Go代码中检查CloudPub/Sub模拟器是否已启动并正在运行。如果没有,我想通知开发人员他/她应该在他/她在本地执行代码之前启动模拟器。当模拟器启动时我注意到一条线INFO:Serverstarted,listeningon8085也许我可以检查端口是否可用或类似。 最佳答案 我猜你用过这个命令:gcloudbetaemulatorspubsubstart你得到了以下输出:[pubsub]ThisistheGooglePub/Subfake.

mongodb - 模拟官方 MongoDb 驱动程序

我需要定义这些接口(interface)来模拟官方的mongo驱动typeMgCollectioninterface{FindOne(ctxcontext.Context,filterinterface{},opts...*options.FindOneOptions)*mongo.SingleResult//Othermethods}typeMgDatabaseinterface{Collection(namestring,opts...*options.CollectionOptions)MgCollection//Othermethods}在mongo驱动包中有两个结构mongo

go - 获取 Go 的 HTTP post 来模拟 curl -d

我正在尝试通过Go将内容发布到nginx服务器。我已验证我能够通过curl正确发布此内容,特别是使用此命令:$curlhttp://example.com/myendpoint-d"SomeText"我能够看到这个POST,并正确处理它。但是,当我尝试使用Go执行POST时,它被服务器拒绝了。在nginx访问日志中,我看到这两行:127.0.0.1--[30/Jan/2014:05:57:34+0000]"POST/myendpointHTTP/1.1"4000"-""Go1.1packagehttp"127.0.0.1--[30/Jan/2014:05:57:39+0000]"Som

php - 位移 : Can someone explain what this code does?

所以,我正在阅读一本关于Go的书(IvoBalbaert的TheWaytoGo),其中有一个代码示例:consthardEight=(1>97因为我没有在这台机器上安装Go,所以我决定将它翻译成PHP来查看结果(通过http://writecodeonline.com/php/,因为我也没有在这台机器上安装PHP):echo(1>97;上面的结果是8....嗯?所以我写了决定好吧,让我们写一个从0到100的for循环并查看结果:for($i=0;$i>97;echo"";}但是,结果是:0:01:82:163:244:325:406:487:568:649:7210:8011:8812

sqlite - 模拟对 sqlite 数据库的多个请求作为 goroutine 导致随机 panic

我正在尝试模拟从http.HandleFunc到对sqlite数据库进行更改的函数的多个请求。我假设http.HandleFunc调用的函数实际上是goroutine。见下面的代码:packagemainimport"fmt"import"time"import"code.google.com/p/go-sqlite/go1/sqlite3"import"crypto/rand"import"encoding/base64"funcgetrandomtext()(string){b:=make([]byte,12)rand.Read(b)en:=base64.StdEncoding//

php - http.newRequest 不发送发布数据

我有以下代码将发布数据发送到服务器,但服务器未检测到请求中的任何发布数据。客户端代码:cookieJar,_:=cookiejar.New(nil)client:=&http.Client{Jar:cookieJar,}postUrl:=os.Args[1]username:=os.Args[2]password:=os.Args[3]data:=url.Values{}data.Set("username",username)data.Add("password",password)data.Add("remember","false")r,_:=http.NewRequest("P